package com.base.po.pdd_sdk;

import java.io.UnsupportedEncodingException;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.List;

/**
 * 转链请求参数
 * 
 * @author max
 *
 */
public class PddGoodsURLRequest {
	private List<String> urlReq = new ArrayList<>(); // 搜索请求参数

	/**
	 * @param p_id 推广位ID
	 */
	public void setP_id(String p_id) {
		if (p_id != null && !p_id.isEmpty()) {
			try {
				urlReq.add("p_id=" + new String(p_id.getBytes(StandardCharsets.UTF_8), "GBK"));
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
	}

	/**
	 * @param goods_id_list 商品ID，目前仅支持单个查询
	 */
	public void setGoods_id_list(Long[] goods_id_list) {
		if (goods_id_list != null && goods_id_list.length > 0) {
			StringBuilder sb = new StringBuilder();
			sb.append("[");
			sb.append(goods_id_list[0]);
			sb.append("]");
			urlReq.add("goods_id_list=" + sb);
		}
//		if (goods_id_list != null && goods_id_list.length > 0) {
//			StringBuilder sb = new StringBuilder();
//			sb.append("[");
//			for (int i = 0; i < goods_id_list.length; i++) {
//				sb.append(goods_id_list[i]);
//				if (i == goods_id_list.length - 1) {
//					continue;
//				}
//				sb.append(",");
//			}
//			sb.append("]");
//			urlReq.add("goods_id_list=" + sb);
//		}
	}

	/**
	 * @param generate_short_url 是否生成短链接，true-是，false-否
	 */
	public void setGenerate_short_url(Boolean generate_short_url) {
		if (generate_short_url != null) {
			urlReq.add("generate_short_url=" + generate_short_url);
		}
	}

	/**
	 * @param multi_group true--生成多人团推广链接 false--生成单人团推广链接（默认false）
	 */
	public void setMulti_group(Boolean multi_group) {
		if (multi_group != null) {
			urlReq.add("multi_group=" + multi_group);
		}
	}

	/**
	 * @param custom_parameters 自定义参数
	 */
	public void setGenerate_short_url(String custom_parameters) {
		if (custom_parameters != null && !custom_parameters.isEmpty()) {
            try {
                urlReq.add("custom_parameters=" + new String(custom_parameters.getBytes(StandardCharsets.UTF_8), "GBK"));
            } catch (Exception e) {
                e.printStackTrace();
            }
		}
	}

	/**
	 * @param pull_new 是否开启订单拉新，true表示开启
	 */
	public void setPull_new(Boolean pull_new) {
		if (pull_new != null) {
			urlReq.add("pull_new=" + pull_new);
		}
	}

	/**
	 * @param generate_weapp_webview 是否生成唤起微信客户端链接，true-是，false-否，默认false
	 */
	public void setGenerate_weapp_webview(Boolean generate_weapp_webview) {
		if (generate_weapp_webview != null) {
			urlReq.add("generate_weapp_webview=" + generate_weapp_webview);
		}
	}

	/**
	 * @param zs_duo_id 招商多多客ID
	 */
	public void setZs_duo_id(Long zs_duo_id) {
		if (zs_duo_id != null) {
			urlReq.add("zs_duo_id=" + zs_duo_id);
		}
	}

	/**
	 * @param generate_we_app 是否生成小程序推广
	 */
	public void setGenerate_we_app(Boolean generate_we_app) {
		if (generate_we_app != null) {
			urlReq.add("generate_we_app=" + generate_we_app);
		}
	}

	/**
	 * @return 搜索参数
	 */
	public List<String> getUrlReq() {
		return urlReq;
	}
}
